home *** CD-ROM | disk | FTP | other *** search
/ Varios Español / Varios Español.iso / DBASE5 / CUA_SAMP.ZIP / PEDIDOS.PRG < prev    next >
Text File  |  1994-10-12  |  11KB  |  357 lines

  1. * dBASE 5.0 DFM DRIVER - Do not remove this line
  2. PROCEDURE ORDERS     && Main program
  3. *-----------------------------------------------------------------
  4. * NAME
  5. *   ORDERS.PRG - Main program for form.
  6. *
  7. *-----------------------------------------------------------------
  8.     PRIVATE lTalk, lVoid, cOldProc, cFormRun, cDispMode, cNewMode
  9.     IF SET( 'TALK' ) = 'ON'
  10.         SET TALK OFF
  11.         lTalk = .T.
  12.     ELSE
  13.         lTalk = .F.
  14.     ENDIF
  15.     *--------------------------------------------
  16.     *-- Make sure that FormRun.dbo file is active
  17.     *--------------------------------------------
  18.     cOldProc = SET( 'PROCEDURE' )
  19.     cFormRun = HOME() + 'FORMRUN.DBO'
  20.     * SET PROCEDURE TO &cFormRun
  21.     #include "PEDIDOS.DFM"
  22.     IF TYPE("ORDERS.SetDisp") = "L" .AND. TYPE("ORDERS.DispMode") = "C"
  23.         IF ORDERS.SetDisp
  24.             cDispMode = SET('DISPLAY')
  25.             cNewMode = ORDERS.DispMode
  26.             SET DISPLAY TO &cNewMode
  27.         ENDIF
  28.     ENDIF
  29.     *-------------------------------------------
  30.     *-- If ModalForm is missing from .DFM set it
  31.     *-------------------------------------------
  32.     IF TYPE( 'ORDERS.ModalForm' ) # 'L'
  33.         ORDERS.ModalForm = .T.        && Assume modal form if not set
  34.     ENDIF
  35.     *-----------------------------------
  36.     *-- Open the form based on ModalForm
  37.     *-----------------------------------
  38.     IF ORDERS.ModalForm
  39.         *-----------------------------------
  40.         *-- Use Readmodal() to open the form
  41.         *-----------------------------------
  42.         ORDERS.Action = .F.        && Set .T. by OKHAND before closing
  43.         lVoid = ORDERS.ReadModal()
  44.         DO UDTEXT
  45.         IF ORDERS.Action
  46.             *-------------------------------------------
  47.             *-- Place code here to process OK pushbutton
  48.             *-------------------------------------------
  49.         ENDIF
  50.         IF TYPE("ORDERS.SetDisp") = "L"
  51.             IF ORDERS.SetDisp
  52.                 SET DISPLAY TO &cDispMode
  53.             ENDIF
  54.         ENDIF
  55.         RELEASE ORDERS        && Release the form and object ref.
  56.     ELSE
  57.         *------------------------------
  58.         *-- Use Open() to open the form
  59.         *------------------------------
  60.         _CmdWindow.oBForm = m->Orders
  61.         lVoid = ORDERS.Open()
  62.         Orders.TxName13.Text = LTRIM(ARTICULO->NOM_ART)
  63.         Orders.TxName24.Text = LTRIM(STR(ARTICULO->PRECIO))
  64.         Orders.TxName27.Text = LTRIM(STR(ARTICULO->CAN_ALM))
  65.         Orders.TxName25.Text = LTRIM(STR((ARTICULO->PRECIO - ARTICULO->COSTE) / 100))
  66.         Name = TRIM(EMPLEADO->NOMBRE)+" "+EMPLEADO->APELLIDO
  67.         Orders.TxName18.text = name
  68.         * Show user if the record is marked for deletion
  69.         IF DELETED()
  70.            Orders.TxName23.Text = "BORRADO"
  71.         ELSE
  72.            Orders.TxName23.Text = ""
  73.         ENDIF
  74.         *-------------------------------------------
  75.         *-- Make the form release itself when closed
  76.         *-- Comment out the RELEASE command to keep
  77.         *-- the form defined when closed.
  78.         *-------------------------------------------
  79.         RELEASE ORDERS
  80.     ENDIF
  81.     IF .NOT. ISBLANK( m->cOldProc )
  82.         SET PROCEDURE TO &cOldProc
  83.     ENDIF
  84.     IF lTalk
  85.         SET TALK ON
  86.     ENDIF
  87. RETURN
  88. *-- EOP: C:\DBASE\NEW\ORDERS.PRG
  89.  
  90. PROCEDURE Closeme     && PBNAME5.ONCLICK
  91. *-----------------------------------------------------------------
  92. * NAME
  93. *   ONCLICK - Event handler for PBNAME5
  94. *
  95. *-----------------------------------------------------------------
  96.     Form.Action = .F.
  97.     lVoid = Form.Close()
  98. RETURN
  99.  
  100. PROCEDURE Add_new     && PBNAME3.ONCLICK
  101. *-----------------------------------------------------------------
  102. * NAME
  103. *   ONCLICK - Event handler for PBNAME3
  104. *
  105. *-----------------------------------------------------------------
  106.     NewRecord = .T.
  107.     *Write data to disk
  108.     lvoid = Form.submit()
  109.     * Append a record
  110.     APPEND BLANK
  111.     Lvoid=form.Cust_Id001.SETFOCUS()
  112.     *Refresh Screen Data
  113.     lvoid = Form.refresh()
  114.     Form.TxName13.Text = ""
  115.     Form.TxName24.Text = ""
  116.     Form.TxName27.Text = ""
  117.     Form.TxName25.Text = ""
  118.     Form.TxName18.text = ""
  119.     Form.TxName23.Text = ""
  120. RETURN
  121.  
  122. PROCEDURE DelIt     && PBNAME4.ONCLICK
  123. *-----------------------------------------------------------------
  124. * NAME
  125. *   ONCLICK - Event handler for PBNAME4
  126. *
  127. *-----------------------------------------------------------------
  128.     IF DELETED()
  129.       Form.TxName23.Text = ""
  130.       RECALL
  131.     ELSE
  132.       Form.TxName23.Text = "BORRADO"
  133.       DELETE
  134.     ENDIF
  135. RETURN
  136.  
  137. PROCEDURE Printme     && PBNAME6.ONCLICK
  138. *-----------------------------------------------------------------
  139. * NAME
  140. *   ONCLICK - Event handler for PBNAME6
  141. *
  142. *-----------------------------------------------------------------
  143. DEFINE FORM Prt FROM 5,25 TO 16,50 ;
  144.     PROPERTY ;
  145.         TEXT "Imprimir ficha"
  146. DEFINE TEXT t1 OF Prt AT 1,1 ;
  147.     PROPERTY ;
  148.         Text "Tipo :",;
  149.         COLORNORMAL "R/W"
  150. DEFINE RADIOBUTTON Rep OF Prt AT 2,1 ;
  151.     PROPERTY ;
  152.         Text "Informe",;
  153.         Group .T.,;
  154.         COLORNORMAL "N/W",;
  155.         WIDTH 15
  156. DEFINE TEXT T3 OF Prt AT 9,5 ;
  157.     PROPERTY ;
  158.         TEXT "IMPRIMIENDO ..." ,;
  159.         VISIBLE .F.,;
  160.         WIDTH 15
  161. DEFINE PUSHBUTTON P1 OF Prt AT 8,12 ;
  162.     PROPERTY ;
  163.         TEXT "&Aceptar",;
  164.         ONCLICK "RunRep",;
  165.         Width 11
  166. DEFINE PUSHBUTTON P2 OF Prt AT 8,0 ;
  167.     PROPERTY ;
  168.         TEXT "&Cancelar",;
  169.         ONCLICK "CloseMe",;
  170.         Width 12
  171. lVoid = Prt.Open()
  172.  
  173. ******************
  174. PROCEDURE Runrep
  175.  
  176. * Check for Labels or Reports
  177. SET CONSOLE OFF
  178. DO CASE
  179.     CASE Form.Rep.Value
  180.          * display to user something is happening
  181.          Form.T3.Visible = .t.
  182.          REPORT FORM Pedidos TO PRINTER
  183. ENDCASE
  184. SET CONSOLE ON
  185. SKIP -1
  186. lVoid = Form.Close()
  187. lVoid = Form.Release()
  188. RETURN
  189.  
  190. PROCEDURE SkipFor     && PBNAME21.ONCLICK
  191. *-----------------------------------------------------------------
  192. * NAME
  193. *   ONCLICK - Event handler for PBNAME21
  194. *
  195. *-----------------------------------------------------------------
  196.     DO SkipHand
  197.     DO UdText
  198. RETURN
  199.  
  200. PROCEDURE SkipBack     && PBNAME22.ONCLICK
  201. *-----------------------------------------------------------------
  202. * NAME
  203. *   ONCLICK - Event handler for PBNAME22
  204. *
  205. *-----------------------------------------------------------------
  206.     DO PrevHand
  207.     DO UdText
  208. RETURN
  209.  
  210. PROCEDURE UdText
  211. *-----------------------------------------------------------------
  212. *
  213. *  Updates text objects on Next or Previous buttons
  214. *
  215. *-----------------------------------------------------------------
  216.     IF .NOT. EOF()
  217.         Form.TxName13.Text = LTRIM(ARTICULO->NOM_ART)
  218.         Form.TxName24.Text = LTRIM(STR(ARTICULO->PRECIO))
  219.         Form.TxName27.Text = LTRIM(STR(ARTICULO->CAN_ALM))
  220.         Form.TxName25.Text = LTRIM(STR((ARTICULO->PRECIO - ARTICULO->COSTE) / 100))
  221.         Name = TRIM(EMPLEADO->NOMBRE)+" "+EMPLEADO->APELLIDO
  222.         Form.TxName18.text = name
  223.         * Show user if the record is marked for deletion
  224.         IF DELETED()
  225.            Form.TxName23.Text = "BORRADO"
  226.         ELSE
  227.            Form.TxName23.Text = ""
  228.         ENDIF
  229.     ENDIF
  230. RETURN
  231.  
  232. PROCEDURE CloseOrd     && ORDERS.ONCLOSE
  233. *-----------------------------------------------------------------
  234. * NAME
  235. *   ONCLOSE - Event handler for ORDERS
  236. *
  237. *-----------------------------------------------------------------
  238.     IF This.Action
  239.         lVoid = This.Submit()
  240.     ELSE
  241.            IF This.Modified()
  242.             DO ErrorMsg WITH "¡Escritura de datos cancelada!"
  243.            ENDIF
  244.     ENDIF
  245.     USE IN PEDIDOS
  246.     USE IN CLI
  247.     USE IN ARTICULO
  248.     USE IN EMPLEADO
  249.     *USE IN ORDEMP
  250.     *USE IN ORDCUST
  251.     *USE IN ORDGOODS
  252.     lVoid = This.Release()
  253.     mFormOpen=.F.
  254.     DEFINE FORM mTemp PROPERTY VISIBLE .F.
  255.     lVoid = mTemp.OPEN()
  256.     mDesk = mTemp.PARENT
  257.     lVoid = mTemp.CLOSE()
  258.     mFormName=SPACE(8)
  259.     mActive=mDesk.ActiveControl()
  260.     IF TYPE("mActive.ClassName")="C"
  261.         mClass=mActive.ClassName
  262.         IF mClass="FORM"
  263.             mFormName=mActive.Name
  264.             mFormOpen=.T.
  265.         ENDIF
  266.     ENDIF
  267.     IF .NOT. mFormOpen
  268.          Main.F1.CloseAll.Enabled=.T.
  269.          Main.S.Srch.Enabled=.F.
  270.          Main.S.Tp.Enabled=.F.
  271.          Main.S.Btm.Enabled=.F.
  272.          Main.S.Pck.Enabled=.T.
  273.          Main.S.Indx.Enabled=.T.
  274.          Main.E.Undo.Enabled=.F.
  275.          Main.E.Save.Enabled=.F.
  276.          Main.App.Cust.Enabled=.T.
  277.          Main.App.Gds.Enabled=.T.
  278.          Main.App.Acc.Enabled=.T.
  279.          Main.App.Emp.Enabled=.T.
  280.          Main.F1.Bac.Enabled=.T.
  281.          Main.App.Inv.Enabled=.T.
  282.     ENDIF
  283.     Main.App.Ord.Enabled=.T.
  284.     RELEASE _CmdWindow.oBForm
  285. RETURN
  286.  
  287. PROCEDURE OpenOrd     && ORDERS.ONOPEN
  288. *-----------------------------------------------------------------
  289. * NAME
  290. *   ONOPEN - Event handler for ORDERS
  291. *
  292. *-----------------------------------------------------------------
  293.     PUBLIC NewRecord
  294.     NewRecord = .F.
  295.     mFormOpen = .F.
  296.     This.TxName23.Text = ""
  297.     IF .F.
  298.  
  299.     SELECT SELECT()
  300.     USE ARTICULO ORDER COD_ART ALIAS ORDARTIC AGAIN
  301.     SEEK(PEDIDOS->COD_ART)
  302.     SELECT SELECT()
  303.     USE EMPLEADO ORDER COD_EMP ALIAS ORDEMP AGAIN
  304.     SEEK(PEDIDOS->COD_EMP)
  305.     SELECT SELECT()
  306.     USE CLI ORDER COD_CLI ALIAS ORDCLI AGAIN
  307.     SEEK(PEDIDOS->COD_CLI)
  308.     This.TxName13.Text = LTRIM(ORDARTIC->NOM_ART)
  309.     This.TxName24.Text = LTRIM(STR(ORDARTIC->PRECIO))
  310.     This.TxName27.Text = LTRIM(STR(ORDARTIC->CAN_ALM))
  311.     This.TxName25.Text = LTRIM(STR((ORDARTIC->PRECIO - ORDARTIC->COSTE) / 100))
  312.     Name = TRIM(ORDEMP->NOMBRE) +" "+ORDEMP->APELLIDO
  313.     This.TxName18.Text = Name
  314.         SELE PEDIDOS
  315.     endif
  316.     IF .NOT. mFormOpen
  317.         Main.F1.CloseAll.Enabled=.F.
  318.         Main.S.Srch.Enabled=.T.
  319.         Main.S.Tp.Enabled=.T.
  320.         Main.S.Btm.Enabled=.T.
  321.         Main.S.Pck.Enabled=.F.
  322.         Main.S.Indx.Enabled=.F.
  323.         Main.E.Undo.Enabled=.T.
  324.         Main.E.Save.Enabled=.T.
  325.         Main.App.Cust.Enabled=.F.
  326.         Main.App.Gds.Enabled=.F.
  327.         Main.App.Acc.Enabled=.F.
  328.         Main.App.Emp.Enabled=.F.
  329.         Main.F1.Bac.Enabled=.F.
  330.         Main.App.Inv.Enabled=.F.
  331.     ENDIF
  332.     Main.App.Ord.Enabled=.F.
  333. RETURN
  334.  
  335. PROCEDURE Repaint     && ORDERS.ONGOTFOCUS
  336. *-----------------------------------------------------------------
  337. * NAME
  338. *   ONGOTFOCUS - Event handler for ORDERS
  339. *
  340. *-----------------------------------------------------------------
  341.     SELE PEDIDOS
  342. *   lVoid = This.Refresh()
  343. RETURN
  344.  
  345. FUNCTION ChkLook
  346. *-----------------------------------------------------------
  347. * NAME
  348. *   ChkLook
  349. *
  350. * DESCRIPTION
  351. *   Calls the routine to process a lookup and returns result
  352. *
  353. *-----------------------------------------------------------
  354.     PRIVATE lRet
  355.     lRet = LookVal(This, Form)
  356. RETURN lRet
  357.